# -*- coding:utf-8 -*-
#数组中有一个数字出现的次数超过数组长度的一半，请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次，
# 超过数组长度的一半，因此输出2。如果不存在则输出0。
import collections
def MoreThanHalfNum_Solution(numbers):
    # write code here
    tmp = collections.Counter(numbers)   #Counter能返回list里所有元素的计数
    print tmp
    x = len(numbers) / 2
    for k, v in tmp.items():   #items() 函数以列表返回可遍历的(键, 值) 元组数组。
        if v > x:
            return k
    return 0

u=[1,2,3,2,2]
print MoreThanHalfNum_Solution(u)